1. Field of the Invention
The present invention is in the field of computing and pertains particularly to methods for integrating a data storage facility, storage access controller, and in some embodiments a fast data caching system into a single onboard system.
2. Discussion of the State of the Art
In the field of computing, data storage and access remains one of the most important areas of new research. Data storage capacities for single data storage devices are now classed in the terabyte range instead of the gigabyte range.
In a typical computing system random access memory (RAM) is provided for main memory of the system. Main memory is where a computing system stores application data, program data, and other important data frequently accessed by the central processing unit (CPU). A smaller amount of RAM is typically available to the CPU of a computer system and is used for data caching. CPU speeds have increased much more than the speeds at which external data can be stored and accessed.
Mechanical storage disks such as magnetic or optical disks require a read/write head and are slower than more recently developed non-volatile flash-based storage devices. However, reading from and writing to solid-state storage disks, while faster than mechanical disks, is still slower than operating RAM following its true random access characteristic.
While the storage capacity of individual data storage disks have dramatically increased, system developers have not increased cache capacities of computing systems to maintain acceptable or normal ratios of cache available to storage capacity available for a given computing system. The much smaller ratio of cache to available storage capacity may lend to a cache hit ratio or hit rate that is significantly lower when compared to systems with more cache in proportion with storage capacity. Main memory is relatively more expensive to add to a computing system than extra storage space so the tradeoff of more storage capacity but reduced caching capability persists for more robust computing systems.
Architecturally, the closer RAM is to a CPU or processing Chipset the faster it may be accessed and utilized. Many newer computing systems now have some amount of RAM installed directly on the CPU. However, much of the data storage capacity available to these more robust systems is still external and accessible to the host CPU only by cable and a peripheral data storage controller. In systems known to the inventor the controller may be a multi channel storage controller connecting the host to multiple data storage hard disks. The data storage system and the controller for granting computing access to the data storage system are external to the computing host, and the host leverages the storage system through the controller.
Such a data storage controller may be provided as a peripheral component interface (PCI) card that may be installed into an available PCI slot of the computing system. Other peripheral architectures also exist depending on the system and the number of host computers having access to the data storage system. One issue with cabled and networked architecture is latency in reading or writing data, the latency arising from bus contentions, limitations, network bottlenecks and other network problems.
It has occurred to the inventors that if sufficient data storage and access capability could be provided on board a host system, even though it may still use external storage disks, a significant performance increase relative to data reading and writing could result.
Therefore what is clearly needed in the art is an onboard data storage, access and caching solution that may be provided to a host computing system as an installable board or as part of the main board or motherboard of the system. A solution such as this would greatly increase the performance of the system relative to reading and writing data during a computing session.